#pragma once
#include "WareTypes.h"
#include "WareCommonNameSpace.h"

#ifdef WIN32
#include "windows.h"
#endif

//BEGIN_WARECOMMON

void  WareTrace( VCHAR* msg, ... );
VBOOL WareAssertFailed( VCHAR* desc, VCHAR* filename, int32 line );

#ifdef WIN32
#define WareDebugBreak() DebugBreak()
#endif

#ifdef _DEBUG

#define WARE_TRACE WareTrace
#define WARE_ASSERT( exp, desc ) \
	do \
{ \
	if (!(exp) && WareAssertFailed( desc, __FILE__, __LINE__ ) ) \
	WareDebugBreak(); \
}while(0)

#else
#define WARE_TRACE
#define WARE_ASSERT(exp, desc)
#endif

//END_WARECOMMON
